Compiler Support for Scalable and Efficient Memory Systems
نویسندگان
چکیده
ÐTechnological trends require that future scalable microprocessors be decentralized. Applying these trends toward memory systems shows that the size of the cache accessible in a single cycle will decrease in a future generation of chips. Thus, a bank-exposed memory system comprised of small, decentralized cache banks must eventually replace that of a monolithic cache. This paper considers how to effectively use such a memory system for sequential programs. This paper presents Maps, the software technology central to bank-exposed architectures, which are architectures with bank-exposed memory systems. Maps solves the problem of bank disambiguationÐthat of determining at compile-time which bank a memory reference is accessing. Bank disambiguation is important because it enables the compile-time optimization for data locality, where data can be placed close to the computation that requires it. Two methods for bank disambiguation are presented: equivalence-class unification and modulo unrolling. Experimental results are presented using a compiler for the MIT Raw machine, a bank-exposed architecture that relies on the compiler to 1) manage its memory and 2) orchestrate its instruction level parallelism and communication. Results on Raw using sequential codes demonstrate that using bank disambiguation improves performance by a factor of 3 to 5 over using ILP alone.
منابع مشابه
Compiler and Runtime Supports for Efficient and Scalable Big Data Systems
Big Data analytics applications such as social network analysis and web analysis have revolutionized modern computing. The processing demand posed by an unprecedented amount of data challenges both industrial practitioners and academia researchers to design and implement highly efficient and scalable system infrastructures. Unfortunately, Big Data processing is fundamentally limited by memory i...
متن کامل1 Statement of Research Interests
My primary research interest is in systems design, which requires expertise spanning a number of areas including devices, VLSI, microarchitecture, architecture, compilers and programming models. My graduate work encompasses many of these fields and includes scalable microarchitectures, VLSI implementations, compiler optimizations, and memory consistency models. I was also a member of a core tea...
متن کاملCompiler and Runtime Supports for High-Performance, Scalable Big Data Systems
Big Data analytics applications such as social network analysis and web analysis have revolutionized modern computing. The processing demand posed by an unprecedented amount of data challenges both industrial practitioners and academia researchers to design and implement highly efficient and scalable system infrastructures. Unfortunately, Big Data processing is fundamentally limited by memory i...
متن کاملAn effective and efficient code generation algorithm for uniform loops on non-orthogonal DSP architecture
To meet ever-increasing demands for higher performance and lower power consumption, many high-end digital signal processors (DSPs) commonly employ non-orthogonal architecture. This architecture typically is characterized by irregular data paths, heterogeneous registers, and multiple memory banks. Moreover, sufficient compiler support is obviously important to harvest its benefits. However, usua...
متن کاملA Co-Design Framework with OpenCL Support for Low-Energy Wide SIMD Processor
Energy efficiency is one of the most important metrics in embedded processor design. The use of wide SIMD architecture is a promising approach to build energyefficient high performance embedded processors. In this paper, we propose a design framework for a configurable wide SIMD architecture that utilizes an explicit datapath to achieve high energy efficiency. The framework is able to generate ...
متن کاملذخیره در منابع من
با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید
عنوان ژورنال:
- IEEE Trans. Computers
دوره 50 شماره
صفحات -
تاریخ انتشار 2001